1
控制流程的範疇:從順序到例外
AI031Lesson 8
00:00

標準的控制流程是一種可預測的演進:程式計數器根據順序邏輯或明確的跳轉,從位址 $a_k$ 移動至 $a_{k+1}$。然而, 例外控制流程(ECF) 代表了發生在正常流程之外的「突兀」轉移。

1. 數學模型

處理器執行是一個序列 $a_0, a_1, \dots, a_{n-1}$,其中每個 $a_k$ 對應一個指令 $I_k$。當處理器狀態發生變動——一個 事件——會觸發跳轉至一個應用程式即時碼路徑中不存在的專用處理常式。

2. 實作層級

ECF 橋接了硬體與軟體之間的差距。其範圍涵蓋從硬體層級的 例外 (錯誤、中斷)到作業系統層級的 上下文切換 以及 訊號

圖 8.1:例外的結構正常流程(被跳過)順序流程(Iₖ)事件!例外處理常式選擇性回傳(Iₖ₊₁)

3. 「突兀」的現實

無論是使用者按下 Ctrl+C 或是系統呼叫請求磁碟存取,例外控制流程都會迫使中央處理器跳轉至另一個「世界」——核心——以確保系統能對動態狀態變化保持回應。

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>